import request from './request';

/**
 * 获取商机列表
 * @param {Object} params - 查询参数
 * @param {number} params.page - 页码
 * @param {number} params.pageSize - 每页数量
 * @param {number} [params.businessId] - 商机ID
 * @param {string} [params.name] - 客户姓名
 * @param {string} [params.phone] - 手机号
 * @param {number} [params.status] - 商机状态
 * @param {string} [params.assignName] - 归属人姓名
 * @returns {Promise} 返回响应结果
 */
export const getBusinessList = (params) => {
  return request.get('/businesses', { params });
};

/**
 * 添加商机
 * @param {Object} data - 商机数据
 * @param {string} data.phone - 手机号
 * @param {number} data.channel - 渠道来源
 * @param {string} data.name - 客户姓名
 * @param {number} data.gender - 性别
 * @param {number} data.age - 年龄
 * @param {string} data.wechat - 微信号
 * @param {string} data.qq - QQ号
 * @param {number} data.subject - 意向学科
 * @param {string} data.remark - 备注
 * @param {number} data.degree - 学历
 * @param {number} data.jobStatus - 在职情况
 * @param {number} data.courseId - 课程ID
 * @returns {Promise} 返回响应结果
 */
export const createBusiness = (data) => {
  return request.post('/businesses', data);
};

/**
 * 分配商机
 * @param {number} businessId - 商机ID
 * @param {number} userId - 用户ID
 * @returns {Promise} 返回响应结果
 */
export const assignBusiness = (businessId, userId) => {
  return request.put(`/businesses/assign/${businessId}/${userId}`);
};

/**
 * 踢回公海
 * @param {number} id - 商机ID
 * @returns {Promise} 返回响应结果
 */
export const backToPool = (id) => {
  return request.put(`/businesses/back/${id}`);
};

/**
 * 转客户处理
 * @param {number} id - 商机ID
 * @returns {Promise} 返回响应结果
 */
export const toCustomer = (id) => {
  return request.post(`/businesses/toCustomer/${id}`);
};

/**
 * 根据ID查询商机
 * @param {number} id - 商机ID
 * @returns {Promise} 返回响应结果
 */
export const getBusinessById = (id) => {
  return request.get(`/businesses/${id}`);
};

/**
 * 跟进商机
 * @param {Object} data - 跟进数据
 * @param {number} data.id - 商机ID
 * @param {string} data.name - 客户姓名
 * @param {string} data.phone - 手机号
 * @param {number} data.gender - 性别
 * @param {number} data.age - 年龄
 * @param {string} data.wechat - 微信号
 * @param {string} data.qq - QQ号
 * @param {number} data.subject - 意向学科
 * @param {number} data.courseId - 课程ID
 * @param {number} data.degree - 学历
 * @param {number} data.jobStatus - 在职情况
 * @param {number} data.channel - 渠道来源
 * @param {string} data.remark - 备注
 * @param {number} data.status - 商机状态
 * @param {number} data.userId - 归属人ID
 * @param {number} data.clueId - 线索ID
 * @param {string} data.nextTime - 下次跟进时间
 * @param {Array} data.keyItems - 沟通重点
 * @param {number} data.trackStatus - 跟进状态
 * @param {string} data.record - 沟通纪要
 * @returns {Promise} 返回响应结果
 */
export const followBusiness = (data) => {
  return request.put('/businesses', data);
};

/**
 * 获取公海池列表
 * @param {Object} params - 查询参数
 * @param {number} params.page - 页码
 * @param {number} params.pageSize - 每页数量
 * @param {number} [params.businessId] - 商机ID
 * @param {string} [params.name] - 客户姓名
 * @param {string} [params.phone] - 手机号
 * @param {number} [params.subject] - 意向学科
 * @returns {Promise} 返回响应结果
 */
export const getPoolList = (params) => {
  return request.get('/businesses/pool', { params });
};